package com.cmc.cloud.cmclink.doc.api.document.emums;

import lombok.Getter;

/**
 * @author 周贤
 * @date 2025/7/22
 */
public enum SiValidEnum {

    /**
     * 待审核
     */
    PENDING("0", "待审核"),

    /**
     * 有效
     */
    VALID("1", "有效"),

    /**
     * 无效数据
     */
    UNVALID("2", "无效");

    @Getter
    private final String value;

    @Getter
    private final String label;

    SiValidEnum(String value, String label) {
        this.value = value;
        this.label = label;
    }

    /**
     * 根据value返回对应的label
     *
     * @param value 状态值
     * @return 对应的label，如果没有匹配的返回null
     */
    public static String getLabelByValue(String value) {
        for (SiValidEnum status : values()) {
            if (status.getValue().equals(value)) {
                return status.getLabel();
            }
        }
        return null;
    }

    /**
     * 根据value返回对应的label，如果没有匹配的返回原值
     *
     * @param value 状态值
     * @return 对应的label，如果没有匹配的返回原值
     */
    public static String getLabelByValueOrDefault(String value) {
        String label = getLabelByValue(value);
        return label != null ? label : value;
    }

}
